package com.amigo.online.consumer.user.service;

import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

import com.amigo.online.common.core.response.Response;

@FeignClient(name = "amigo-online-provider-user")
public interface FollowService {

	@RequestMapping(value = "/follow/add/{userId}", method = RequestMethod.GET)
	ResponseEntity<Response> concern(@PathVariable("userId")Long userId);

	@RequestMapping(value = "/follow/cancel/{userId}", method = RequestMethod.DELETE)
	ResponseEntity<Response> cancel(@PathVariable("userId")Long userId);

	@RequestMapping(value = "/follow/my/concern/{page}/{size}", method = RequestMethod.GET)
	ResponseEntity<Response> getMyConcern(@PathVariable("page")Integer page, @PathVariable("size")Integer size);

	@RequestMapping(value = "/follow/my/fans/{page}/{size}", method = RequestMethod.GET)
	ResponseEntity<Response> getMyFans(@PathVariable("page")Integer page, @PathVariable("size")Integer size);
	
	@RequestMapping(value = "/follow/my/concern/video/{page}/{size}", method = RequestMethod.GET)
	ResponseEntity<Response> getMyConcernVideos(@PathVariable("page")Integer page, @PathVariable("size")Integer size);

	@RequestMapping(value = "/follow/my/getFriends", method = RequestMethod.GET)
	ResponseEntity<Response> getFriends();

	@RequestMapping(value = "/follow/fans/{id}/{page}/{size}", method = RequestMethod.GET)
	ResponseEntity<Response> getFansById(@PathVariable("id") Long id,@PathVariable("page") Integer page,@PathVariable("size") Integer size);

	@RequestMapping(value = "/follow/concern/{id}/{page}/{size}", method = RequestMethod.GET)
	ResponseEntity<Response> getConcernById(@PathVariable("id") Long id, @PathVariable("page") Integer page,@PathVariable("size") Integer size);
}
